import request from '@/config/axios'
import type { Dayjs } from 'dayjs'

/** 审核计划区域信息 */
export interface AuditPlanArea {
  id: number // id
  levelId: number // 等级
  planId: number // 计划
  areaId: number // 区域
  auditStartDate: string | Dayjs // 审核开始日期
  auditEndDate: string | Dayjs // 审核结束日期
  auditUserId: string // 审核人
  status: number // 状态
  areaName: string // 区域名称
  importantProcesses: string // 重要工序
  recentlyProblem: string // 近期问题
  writeUserId: number // 填报人
  writeUserName: string // 填报人
  writeTime: string | Dayjs // 填报时间
  sendUserId: number // 下发人
  sendUserName: string // 下发人
  sendTime: string | Dayjs // 下发时间
}

// 审核计划区域 API
export const AuditPlanAreaApi = {
  // 查询审核计划区域分页
  getAuditPlanAreaPage: async (params: any) => {
    return await request.get({ url: `/business/audit-plan-area/page`, params })
  },

  // 查询审核计划区域详情
  getAuditPlanArea: async (id: number) => {
    return await request.get({ url: `/business/audit-plan-area/get?id=` + id })
  },

  // 新增审核计划区域
  createAuditPlanArea: async (data: AuditPlanArea) => {
    return await request.post({ url: `/business/audit-plan-area/create`, data })
  },

  // 修改审核计划区域
  updateAuditPlanArea: async (data) => {
    return await request.put({ url: `/business/audit-plan-area/update`, data })
  },

  // 删除审核计划区域
  deleteAuditPlanArea: async (id: number) => {
    return await request.delete({ url: `/business/audit-plan-area/delete?id=` + id })
  },

  /** 批量删除审核计划区域 */
  deleteAuditPlanAreaList: async (ids: number[]) => {
    return await request.delete({
      url: `/business/audit-plan-area/delete-list?ids=${ids.join(',')}`
    })
  },

  // 导出审核计划区域 Excel
  exportAuditPlanArea: async (params) => {
    return await request.download({ url: `/business/audit-plan-area/export-excel`, params })
  }
}
